package com.lms.collection.list;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;

/**
 * @Author: 李孟帅
 * @CreateTime: 2020-05-21 07:12
 * @Description: ${Description}
 */
public class ArrayListDemo {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();//构造一个初始容量为十的空列表。
        ArrayList<String> strings = new ArrayList<>(Arrays.asList("a", "b","c","d","3e"));//构造一个包含指定集合的元素的列表，按照它们由集合的迭代器返回的顺序。
        ArrayList<Object> objects = new ArrayList<>(16);//构造具有指定初始容量的空列表。
        list.addAll(strings);
        list.ensureCapacity(20);//如果需要，增加此 ArrayList实例的容量，以确保它可以至少保存最小容量参数指定的元素数
        list.forEach(System.out::println);//对 Iterable的每个元素执行给定的操作，直到所有元素都被处理或动作引发异常。
        list.sort(Comparator.comparingInt(String::length));//使用提供的 Comparator对此列表进行排序以比较元素。
        List<String> list1 = list.subList(2, 4);//c,d 返回此列表中指定的 fromIndex （包括）和 toIndex之间的独占视图。
        list1.forEach(System.out::println);
        list.trimToSize();//修改这个 ArrayList实例的容量是列表的当前大小。


    }
}
